자바로 날짜 조작 :: 자바예제모음[SSISO Community]
 
SSISO 카페 SSISO Source SSISO 구직 SSISO 쇼핑몰 SSISO 맛집
추천검색어 : JUnit   Log4j   ajax   spring   struts   struts-config.xml   Synchronized   책정보   Ajax 마스터하기   우측부분

자바예제모음
[1]
등록일:2008-05-08 09:59:13 (0%)
작성자:
제목:자바로 날짜 조작
시스템의  밀리초  구하기.(국제표준시각(UTC,  GMT)  1970/1/1/0/0/0  으로부터  경과한  시각)

------------------------------------------------------------------

//밀리초  단위(*1000은  1초),  음수이면  이전  시각

long  time  =  System.currentTimeMillis  (  );

System.out.println  (  time.toString  (  )  );

------------------------------------------------------------------

  

현재  시각을  가져오기.

------------------------------------------------------------------

Date  today  =  new  Date  ();

System.out.println  (  today  );

  

결과  :  Sat  Jul  12  16:03:00  GMT+01:00  2000

------------------------------------------------------------------

  

경과시간(초)  구하기

------------------------------------------------------------------

long  time1  =  System.currentTimeMillis  ();

long  time2  =  System.currentTimeMillis  ();

system.out.println  (  (  time2  -  time1  )  /  1000.0  );

------------------------------------------------------------------

  

Date를  Calendar로  맵핑시키기

------------------------------------------------------------------

Date  d  =  new  Date  (  );

Calendar  c  =  Calendar.getInstance  (  );

c.setTime  (  d  );

------------------------------------------------------------------

  

날짜(년/월/일/시/분/초)  구하기

------------------------------------------------------------------

import  java.util.*;

import  java.text.*;

  

SimpleDateFormat  formatter  =  new  SimpleDateFormat  (  "yyyy.MM.dd  HH:mm:ss",  Locale.KOREA  );

Date  currentTime  =  new  Date  (  );

String  dTime  =  formatter.format  (  currentTime  );

System.out.println  (  dTime  );

------------------------------------------------------------------

  

날짜(년/월/일/시/분/초)  구하기2

------------------------------------------------------------------

GregorianCalendar  today  =  new  GregorianCalendar  (  );

  

int  year  =  today.get  (  today.YEAR  );

int  month  =  today.get  (  today.MONTH  )  +  1;

int  yoil  =  today.get  (  today.DAY_OF_MONTH  );

  

GregorianCalendar  gc  =  new  GregorianCalendar  (  );

  

System.out.println  (  gc.get  (  Calendar.YEAR  )  );

System.out.println  (  String.valueOf  (  gc.get  (  Calendar.MONTH  )  +  1  )  );

System.out.println  (  gc.get  (  Calendar.DATE  )  );

System.out.println  (  gc.get  (  DAY_OF_MONTH  )  );

------------------------------------------------------------------

  

날짜(년/월/일/시/분/초)  구하기3

------------------------------------------------------------------

DateFormat  df  =  DateFormat.getDateInstance(DateFormat.LONG,  Locale.KOREA);

Calendar  cal  =  Calendar.getInstance(Locale.KOREA);

nal  =  df.format(cal.getTime());

------------------------------------------------------------------

  

-  표준시간대를  지정하고  날짜를  가져오기.

------------------------------------------------------------------

TimeZone  jst  =  TimeZone.getTimeZone  ("JST");

Calendar  cal  =  Calendar.getInstance  (  jst  );  //  주어진  시간대에  맞게  현재  시각으로  초기화된  GregorianCalender  객체를  반환.//  또는  Calendar  now  =  Calendar.getInstance(Locale.KOREA);

System.out.println  (  cal.get  (  Calendar.YEAR  )  +  "년  "  +  (  cal.get  (  Calendar.MONTH  )  +  1  )  +  "월  "  +  cal.get  (  Calendar.DATE  )  +  "일  "  +  cal.get  (  Calendar.HOUR_OF_DAY  )  +  "시  "  +cal.get  (  Calendar.MINUTE  )  +  "분  "  +  cal.get  (  Calendar.SECOND  )  +  "초  "  );

  

결과  :  2000년  8월  5일  16시  16분  47초

------------------------------------------------------------------

  

영어로된  날짜를  숫자로  바꾸기

------------------------------------------------------------------

Date  myDate  =  new  Date  (  "Sun,5  Dec  1999  00:07:21"  );

System.out.println  (  myDate.getYear  (  )  +  "-"  +  myDate.getMonth  (  )  +  "-"  +  myDate.getDay  (  )  );

------------------------------------------------------------------

  

"Sun,  5  Dec  1999  00:07:21"를  "1999-12-05"로  바꾸기

------------------------------------------------------------------

SimpleDateFormat  formatter_one  =  new  SimpleDateFormat  (  "EEE,  dd  MMM  yyyy  hh:mm:ss",Locale.ENGLISH  );

SimpleDateFormat  formatter_two  =  new  SimpleDateFormat  (  "yyyy-MM-dd"  );

  

String  inString  =  "Sun,  5  Dec  1999  00:07:21";

  

ParsePosition  pos  =  new  ParsePosition  (  0  );

Date  frmTime  =  formatter_one.parse  (  inString,  pos  );

String  outString  =  formatter_two.format  (  frmTime  );

  

System.out.println  (  outString  );

------------------------------------------------------------------

  

숫자  12자리를,  다시  날짜로  변환하기

------------------------------------------------------------------

Date  conFromDate  =  new  Date();

long  ttl  =  conFromDate.parse  (  "Dec  25,  1997  10:10:10"  );

System.out.println  (  ttl  );  //예  938291839221

  

Date  today  =  new  Date  (  ttl  );

DateFormat  format  =  DateFormat.getDateInstance  (  DateFormat.FULL,Locale.US  );

String  formatted  =  format.format  (  today  );

System.out.println  (  formatted  );

------------------------------------------------------------------

  

특정일로부터  n일  만큼  이동한  날짜  구하기

------------------------------------------------------------------

특정일의  시간을  long형으로  읽어온다음..

날짜*24*60*60*1000  을  계산하여.

long형에  더해줍니다.

그리고  나서  Date클래스와  Calender클래스를  이용해서  날짜와  시간을  구하면  됩니다

------------------------------------------------------------------

  

특정일에서  일정  기간후의  날짜  구하기2

------------------------------------------------------------------

//iDay  에  입력하신  만큼  빼거나  더한  날짜를  반환  합니다.

import  java.util.*;

  

public  String  getDate  (  int  iDay  )

{

                Calendar  temp=Calendar.getInstance  (  );

                StringBuffer  sbDate=new  StringBuffer  (  );

  

                temp.add  (  Calendar.DAY_OF_MONTH,  iDay  );

  

                int  nYear  =  temp.get  (  Calendar.YEAR  );

                int  nMonth  =  temp.get  (  Calendar.MONTH  )  +  1;

                int  nDay  =  temp.get  (  Calendar.DAY_OF_MONTH  );

              

                sbDate.append  (  nYear  );

                if  (  nMonth  <  10  )

                sbDate.append  (  "0"  );

                sbDate.append  (  nMonth  );

                if  (  nDay  <  10  )

                sbDate.append  (  "0"  );

                sbDate.append  (  nDay  );

              

                return  sbDate.toString  (  );

}

------------------------------------------------------------------

  

현재날짜에서  2달전의  날짜를  구하기

------------------------------------------------------------------

Calendar  cal  =  Calendar.getInstance  (  );//오늘  날짜를  기준으루..

cal.add  (  cal.MONTH,  -2  );  //2개월  전....

System.out.println  (  cal.get  (  cal.YEAR  )  );

System.out.println  (  cal.get  (  cal.MONTH  )  +  1  );

System.out.println  (  cal.get  (  cal.DATE  )  );

------------------------------------------------------------------

  

달에  마지막  날짜  구하기

------------------------------------------------------------------

for  (  int  month  =  1;  month  <=  12;  month++  )

{

                GregorianCalendar  cld  =  new  GregorianCalendar  (  2001,  month  -  1,  1  );

                System.out.println  (  month  +  "/"  +  cld.getActualMaximum  (  Calendar.DAY_OF_MONTH  )  );

}

------------------------------------------------------------------

  

해당하는  달의  마지막  일  구하기

------------------------------------------------------------------

GregorianCalendar  today  =  new  GregorianCalendar  (  );

int  maxday  =  today.getActualMaximum  (  (  today.DAY_OF_MONTH  )  );

System.out.println  (  maxday  );

------------------------------------------------------------------

  

특정일을  입력받아  해당  월의  마지막  날짜를  구하는  간단한  예제.(달은  -1  해준다.)...윤달  30일  31일  알아오기.

------------------------------------------------------------------

Calendar  cal  =  Calendar.getInstance  (  );

cal.set  (  Integer.parseInt  (  args[0]  ),  Integer.parseInt  (  args  [1]  )  -  1,  Integer.parseInt  (  args  [2]  )  );

SimpleDateFormat  dFormat  =  new  SimpleDateFormat  (  "yyyy-MM-dd"  );

System.out.println  (  "입력  날짜  "  +  dFormat.format  (  cal.getTime  (  )  )  );

System.out.println  (  "해당  월의  마지막  일자  :  "  +  cal.getActualMaximum  (  Calendar.DATE  )  );

------------------------------------------------------------------

  

해당월의  실제  날짜수  구하기  (  1999년  1월달의  실제  날짜수를  구하기  )

------------------------------------------------------------------

Calendar  calendar  =  Calendar.getInstance  (  );

calendar.set  (  1999,  0,  1  );

int  maxDays  =  calendar.getActualMaximum  (  Calendar.DAY_OF_MONTH  );

------------------------------------------------------------------

  

어제  날짜  구하기

------------------------------------------------------------------

오늘날짜를  초단위로  구해서  하루분을  빼주고  다시

셋팅해주면  쉽게  구할수  있죠..

setTime((기준일부터  오늘까지의  초를  구함)  -  24*60*60)해주면  되겠죠..

------------------------------------------------------------------

  

어제  날짜  구하기2

------------------------------------------------------------------

import  java.util.*;

  

public  static  Date  getYesterday  (  Date  today  )

{

                if  (  today  ==  null  )

                throw  new  IllegalStateException  (  "today  is  null"  );

                Date  yesterday  =  new  Date  (  );

                yesterday.setTime  (  today.getTime  (  )  -  (  (long)  1000  *  60  *  60  *  24  )  );

              

                return  yesterday;

}

------------------------------------------------------------------

  

내일  날짜  구하기

------------------------------------------------------------------

Date  today  =  new  Date  (  );

Date  tomorrow  =  new  Date  (  today.getTime  (  )  +  (long)  (  1000  *  60  *  60  *  24  )  );

------------------------------------------------------------------

  

내일  날짜  구하기2

------------------------------------------------------------------

Calendar  today  =  Calendar.getInstance  (  );

today.add  (  Calendar.DATE,  1  );

Date  tomorrow  =  today.getTime  (  );

------------------------------------------------------------------

  

오늘날짜에서  5일  이후  날짜를  구하기

------------------------------------------------------------------

Calendar  cCal  =  Calendar.getInstance();

c.add(Calendar.DATE,  5);

------------------------------------------------------------------

  

날짜에  해당하는  요일  구하기

------------------------------------------------------------------

//DAY_OF_WEEK리턴값이  일요일(1),  월요일(2),  화요일(3)  ~~  토요일(7)을  반환합니다.

//아래  소스는  JSP일부입니다.

import  java.util.*;

  

Calendar  cal=  Calendar.getInstance  (  );

int  day_of_week  =  cal.get  (  Calendar.DAY_OF_WEEK  );

if  (  day_of_week  ==  1  )

                m_week="일요일";

else  if  (  day_of_week  ==  2  )

                m_week="월요일";

else  if  (  day_of_week  ==  3  )

                m_week="화요일";

else  if  (  day_of_week  ==  4  )

                m_week="수요일";

else  if  (  day_of_week  ==  5  )

                m_week="목요일";

else  if  (  day_of_week  ==  6  )

                m_week="금요일";

else  if  (  day_of_week  ==  7  )

                m_week="토요일";
[본문링크] 자바로 날짜 조작
[1]
코멘트(이글의 트랙백 주소:/cafe/tb_receive.php?no=7525
작성자
비밀번호

 

SSISOCommunity

[이전]

Copyright byCopyright ⓒ2005, SSISO Community All Rights Reserved.